From: Tim Deegan Date: Fri, 20 Apr 2012 08:49:06 +0000 (+0100) Subject: x86: restore vcpu_destroy_pagetables() call on HVM domain teardown. X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https://%22%22/%22http:/www.example.com/cgi/%22https:/%22%22?a=commitdiff_plain;h=abbcefcd9f6588b1bcac41e221083b1b4eb75c4a;p=xen.git x86: restore vcpu_destroy_pagetables() call on HVM domain teardown. HVM vcpus that are using shadow pagetables have valid guest_table fields, which need to be tidied up on domain teardown. Signed-off-by: Tim Deegan Acked-by: Jan Beulich Committed-by: Tim Deegan --- diff --git a/xen/arch/x86/domain.c b/xen/arch/x86/domain.c index cd56b0edcc..c871e5fb8a 100644 --- a/xen/arch/x86/domain.c +++ b/xen/arch/x86/domain.c @@ -2105,13 +2105,14 @@ int domain_relinquish_resources(struct domain *d) /* Tear down paging-assistance stuff. */ paging_teardown(d); + /* Drop the in-use references to page-table bases. */ + for_each_vcpu ( d, v ) + vcpu_destroy_pagetables(v); + if ( !is_hvm_domain(d) ) { for_each_vcpu ( d, v ) { - /* Drop the in-use references to page-table bases. */ - vcpu_destroy_pagetables(v); - /* * Relinquish GDT mappings. No need for explicit unmapping of * the LDT as it automatically gets squashed with the guest